package com.sicheng.lc.lc笔试.小红书篇;

import java.util.Scanner;

public class 镜像 {

    /**
     * 已知一个序列的生成方式如下：
     * <p>
     * • 序列生成需要一个基础序列A，这个序列由n个 不大于100的数字组成，同时给定镜像复制次数m。
     * <p>
     * • 然后对于A进行m次镜像复制，例如序列A={1，2，3}，则一次镜像复制后得到的序列是{1，2，3，3，2，1}，两次镜像复制得到的序列是B={1，2，3，3，2，1，1，2，3，3，2，1} 。
     * <p>
     * 现在给出你生成一个序列所需要的参数，请你计算该序列的第k位是多少。
     * <p>
     * <p>
     * <p>
     * 输入描述
     * 输入第一行包含三个整数n，m，k，含义如题所示。(1<=n<=100,1<=m<=60,1<=k<=1e18，部分数据k<10000)
     * <p>
     * 输入第二行包含n个正整数，每个正整数都不大于100，表示基础序列A。
     * <p>
     * 数字间有空格隔开
     * <p>
     * 输出描述
     * 输出仅包含一个正整数，即序列第k位的数字。
     * <p>
     * <p>
     * 样例输入
     * 3 3 10
     * 1 2 3
     * 样例输出
     * 3
     */
    public static void main(String[] args) {
        // write your code here

        Scanner sc = new Scanner(System.in);
        int n = sc.nextInt();
        int m = sc.nextInt();
        int k = sc.nextInt();
        int[] a = new int[(n << 1) + 1];
        for (int i = 1; i <= n; i++) {
            a[i] = sc.nextInt();
            a[(n << 1) - i + 1] = a[i];
        }

        k = k % (n << 1);

        System.out.println(a[k]);

    }
}
